System and method of polling wireless devices having a substantially fixed and/or predesignated geographic location

ABSTRACT

A system and method of polling wireless devices having a substantially fixed geographic location, and optionally receiving data from one or more of the polled devices, in a manner that efficiently utilizes network resources.

RELATED APPLICATIONS

This application claims priority to, and is a continuation-in-part ofU.S. application Ser. No. 09/958,752, with an International filing dateof Dec. 29, 2000, which is a U.S. National Phase Application under 35U.S.C. 371 and claims priority to International Application No.PCT/US00/35513, also having a filing date of Dec. 29, 2000, which claimspriority from U.S. provisional application Ser. No. 60/173,742 filed onDec. 30, 1999, the details of the above applications are herebyincorporated by reference.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates generally to a system and method ofpolling wireless devices having a substantially fixed predetermined,current and/or predesignated geographic location in a manner thatefficiently utilizes network resources. More particularly, the presentinvention relates to a system and method of polling wireless devices,and transmitting data from the wireless devices to a computer configuredto receive the data from each respective wireless device to, forexample, determine status of the wireless devices in the wirelesssystem.

2. Background Description

FIGS. 1–3 show a prior art radio frequency (RF) transmission system 100,as disclosed in U.S. Pat. No. 5,819,172, incorporated herein byreference, for transmitting information from one of a plurality oforiginating processors A–N to at least one of a plurality of destinationprocessors (A–N) which may be transported during operation. The system100 includes: at least one gateway switch 150 that stores informationreceived from one of the at least one originating processor prior totransmission of the information to the at least one destinationprocessor; a RF information transmission network 130 for transmittingstored information received from one of the at least one gateway switch150 by RF transmission to at least one destination processor; and atleast one interface switch 162 that connects a gateway switch 150 to theRF transmission network 130 and transmits stored information receivedfrom one of the at least one gateway switch 150 to the RF informationtransmission network 130.

The information is transmitted to a receiving interface switch by theelectronic mail system in response to an address of the receivinginterface switch which has been added to the information originated bythe originating processor by either the originating processor or gatewayswitch 150. The information is transmitted from the receiving interfaceswitch to the RF information transmission network 130 with an address ofthe destination processor to receive the information which has beenadded by either the originating processor, a gateway switch or thereceiving interface switch.

More particularly, FIG. 2 illustrates a block diagram of the connectionbetween a plurality of gateway switches with mailboxes 150 in differentelectronic mail systems to the RF information transmission network 130.Multiple gateway switches with mailboxes 150 from a single electronicmail system 1–N may be connected to each interface switch 162 instead ofthe connection of a single gateway switch with a mailbox to a singleinterface switch as illustrated. A plurality of interface switches 162connect information transmitted from at least one electronic mail systemas illustrated in FIG. 1. Optionally, a plurality of electronic mailsystems 1–N are connected to a data input port of the RF informationtransmission system which is preferably hub switch 116. The dotted linecommunication paths 163 illustrate optional information transmissions inwhich information from a plurality of different electronic mail systemsis concentrated at a single interface switch as illustrated in FIG. 2.The dotted line communication paths 163 illustrate connections toadditional gateway switches with mailboxes 150 within electronic mailsystems 1–N.

The interface switches 162 function as a security check to determinethat information transmissions originating from a gateway switch withmailbox 150 represent transmissions which should be coupled to a hubswitch 116 of the RF information transmission network 130. The securitycheck is performed by the interface switch 162 comparing theidentification number of the RF receiver 119 which has been added byeither an originating processor A–N or a gateway switch with mailboxes150 with permissible identification numbers or the interface switchperforming the addition of the identification number.

The interface switch 162 also removes information added by theelectronic mail system 1–N to the information originated by theoriginating processor A–N from the stored information received from oneof the gateway switches 150, and adds information used by the RFinformation transmission network 130 during transmission of theinformation originated at the originating processor to a RF receiver 119in the RF information transmission network 130 which receives theinformation and transfers it to the destination processor A–N.Additionally, the interface switch 162 encodes data, which is requiredto format the display of the cathode ray tube (CRT) of the destinationprocessor for the electronic mail system to which the destinationprocessor is connected, in the form of a character or characters whichare decoded by either the RF receiver 119 or the destination processorA–N. This information is added in decoded form back to the informationwhich is processed by the destination processor with a format of theelectronic mail system to which the destination processor A–N isconnected.

The interface switches 162 also function to store information which hasbeen stored by at least one gateway switch 150 that is received from aplurality of originating processors, and assemble the information from aplurality of originating processors into a packet having a predeterminedformat and transmit the packet to the hub switch 116 within the RFinformation transmission network 130. The hub switch is the preferablenode in the RF information transmission network to which communicationsfrom the gateway switches 150 should be transmitted as a consequence ofit having jurisdiction over both local access and transport area (LATA)switches 114 and the local switches 112 in the RF informationtransmission network, which results in lesser network overhead.

The hub switch 116 receives the packet from the receiving interfaceswitch 162 and disassembles the packet into information from theplurality of originating processors. The originating processors areeither within a single electronic mail system such as system 100, orfrom a plurality of electronic mail systems, such as systems 1–N, orfrom outside of any electronic mail system from at least one additionalprocessor 312 which is connected directly to interface switch 162 tooriginate information to be transmitted to a destination processor A–Nin an electronic mail system as described below. The RF informationtransmission network 130 transmits the disassembled information from thehub switch 116, including the identification number of the RF receiver119 transferring information, to the destination processor A–N to alocal switch 112 storing the file identified by the identificationnumber and any destination of the RF receiver in the RF informationtransmission network to which the information and identification numberis to be transmitted by the RF information transmission network, andadds any destination of the RF receiver to the information. The RFinformation transmission network, in response to any added destination,transmits the information and identification number to the destinationfor RF broadcast to the RF receiver 119 for transfer to the destinationprocessor A–N.

The information is transmitted to a receiving interface switch 162 fromone or more gateway switches 150 by one or more electronic mail systems1–N in response to an address of the receiving interface switch whichhas been added to the information originated by the originatingprocessor by either the originating processor or gateway switch. Theinformation is transmitted from the receiving interface switch 162 tothe RF information transmission network with an address of thedestination processor, such as a name of a user of the destinationprocessor A–N, to receive the information which has been added by eitherthe originating processor A–N, a gateway switch 150 or the receivinginterface switch 304.

Preferably, the address of the receiving interface switch is a codeword, such as “TF-MOBOX”, which is recognized throughout the electronicmail system when appended to information as directing the information tobe transmitted to the interface switch 162. The address of thedestination processor is preferably the identification number of the RFreceiver 119 within the RF information transmission network 130. Theaddress of the receiving interface switch may be added to theinformation originated by the originating processor, by a gateway switch150 or by the originating processor A–N. The address of the receivinginterface switch 162 may be added to the information by matching anidentification of the destination processor A–N which may be the name ofthe individual utilizing the processor or some other information to addan address of an interface switch such as the aforementioned “TF-MOBOX”stored with the matched identification of the destination processor tothe information as the address of the receiving interface switch.

Alternatively, the originating processor may be used to add the addressof the receiving interface switch 162 by inputting the address of thereceiving interface switch (TF-MOBOX) along with an identification ofthe destination processor A–N (name of recipient using the processor).

The originating processor A–N may also add the address of the receivinginterface switch 162 by matching an identification of the destinationprocessor (name of the user of the processor) with a storedidentification of a destination processor and adding an address of theinterface switch (TF-MOBOX) stored with the matched identification ofthe destination processor to the information as the address of thereceiving interface switch.

The identification number may be added to the information originated bythe originating processor or, alternatively, maybe added by theoriginating processor by matching an identification of the destinationprocessor (the name of the user of the processor) with a storedidentification of a destination processor (the authorized user of thedestination processor) and adding an identification number stored withthe matched identification of the destination processor to theinformation as the identification number of the RF receiver 119.Alternatively, the aforementioned matching process may be performed byeither the gateway switch 150 or the interface switch 162. Theadditional processors 312 originates information from outside of anyelectronic mail system.

Processors 312 provide an address of at least one destination processorin an electronic mail system, such as the name of the user, to receiveinformation transmitted by the RF information transmission system 130,or an identification number of the RF receiver 119 receiving informationand transferring the information to the destination processor. Theinterface switch 162 which receives the information from each processor312 adds information used by the RF information transmission network 130during transmission of the information to the RF receiver 119 receivingthe information in the same manner as described above with respect tothe interface switch 162.

Processors 312 are only required to have a telephone modem and supportprogramming to format information for RF transmission to a destinationprocessor A–N within any one of one or more electronic mail systems 1–N.The processors 312 are not required to have the necessary electronicmail system software present in originating processors A–N orinterconnections with an electronic mail system. As a result of theconnection to the interface switch 162, information originating from theadditional processors 312 may be transmitted by RF transmission to adestination processor A–N within any one or a plurality of electronicmail systems with the user of the processor 312, the processor 312 orthe interface switch 162 only having to supply an identification numberof the receiver 119 to input information into the RF informationtransmission system 130 for RF transmission to a destination processor.

The difference between originating information by one of the additionalprocessors 312 outside of any electronic mail system and originatinginformation by one of the processors within one of the electronic mailsystems is that the direct connection of the additional processor to theinterface switch 162 eliminates the requirement for the adding of anaddress of the interface switch 162 which is required by the electronicmail systems to forward the information to the interface switch wherenecessary formatting of the information to be compatible with the RFinformation transmission system is performed. The interface switch 162packetizes information originating from the additional processors 312 inthe same manner as described above with respect to informationoriginating from within an electronic mail system.

Information from within an electronic mail system and originating fromadditional processors 312 outside of the electronic mail system may beformatted into the same packets which are forwarded to the hub switch116. Additionally, interface switch 162 may be connected only to theadditional processors 312 to provide an interface only for processorsoutside of any electronic mail system to destination processors A–Nwithin one or more electronic mail systems 1–N. The only informationwhich is necessary to be inputted by the additional processors 312 isthe address of the destination processor (user of the processor). Theaddition of the identification number of the receiver 119 may be addedby matching of an identification of the destination processor withstored destination processors within the additional processor 312, orthe interface switch 162 with an identification number of the receiver119 stored with an identification of a destination processor A–N used asan identification of the destination processor upon a match having beenmade.

U.S. Pat. No. 5,819,172 does not, however, generally relate to, forexample, a system and method of polling wireless devices having ageographic location and/or transmitting data from the wireless devicesto a computer configured to receive the data from with each respectivewireless device. Nor does U.S. Pat. No. 5,819,172 contemplate, forexample, maximizing the number of wireless devices which can be polledat a given time, optionally in a manner that substantially optimizes RFcapacity.

SUMMARY OF THE INVENTION

It is one optional feature and advantage of the present invention toprovide a system and method of polling wireless devices having ageographic location, optionally during nonpeak RF capacity times, in amanner that efficiently utilizes network resources.

It is another optional feature and advantage of the present invention toprovide a system and method of automatically polling wireless devicesand transmitting select data from the wireless devices to a computerassociated with each respective wireless device.

It is yet another optional feature and advantage of the presentinvention to substantially maximize the number of wireless devices whichcan be polled at a given time, optionally in a manner that substantiallyoptimizes RF capacity.

It is still another optional feature and advantage of the presentinvention to keep track of number of outstanding polls in a givengeographic area associated with, for example, a base transceiver stationof a wireless communication system.

It is an additional optional feature and advantage of the presentinvention to queue poll responses if, for example, a customer hostcomputer connection is down and/or otherwise unresponsive, and forwardqueued messages to the customer host when host connectivity isreestablished.

The system and method in accordance with the present invention providesthe ability to poll, for example, subscriber units (SUs) having asubstantially fixed location, preferably and optionally during nonpeakRF capacity times. As used herein, polling refers to a communicationnetwork arrangement whereby a computer, sequentially and relativelyquickly, asks one or more remote SUs whether they want to transmit someinformation. The purpose is to give each remote SU an opportunity totransmit and/or receive information on the network, at a predeterminedtime and/or during a predetermined time period.

In at least one embodiment, in order to keep from flooding the networkwith poll requests it is preferred that polling time frames, pollingintervals and poll retries be controlled and/or monitored. In at leastone embodiment, the system maintains a list of SUs that are to be polledprior to the configured polling start times. The system polls the SUs assoon as the poll start window is reached.

At least one embodiment of the fixed point polling service in accordancewith the present invention is logically divided into the followingfunctional areas: 1) poll data download, 2) scheduled poll initiation,3) poll status inquiry, and 4) unsolicited poll response. The polldownload server is responsible for accepting host to system poll requestmessages from customer hosts, and inserting them into, for example, apoll information database. Once insertion into the poll informationdatabase is complete, the system preferably responds to the host with ahost to system poll indication message. This message tells the host thatthe system has stored the message, and will attempt to poll the SUduring one or more of the configured poll time frames. If the polldownload server is unable to insert the poll request into the pollinformation database, the poll download server responds to the host witha message indicating why the poll request was denied.

The poll scheduler server preferably tracks poll start and stop times,poll initiation, poll status and poll retries. When it is time for thepoll scheduler to search for poll requests, the poll scheduler readsqueued or otherwise stored polls from the poll information database. Thepoll scheduler also tracks the number of poll attempts for each pollrequest. If a poll request has exhausted the maximum number of pollattempts, the poll scheduler optionally sends a negative acknowledgement(NAK) to the customer's host and mark the poll status as failed. Thepoll scheduler server can also optionally update the first datarepository to indicate that the poll request has been stored in thesecond data repository. The poll scheduler server can also optionallyreceive at least one of an acknowledgement (ACK) and a NAK responsemessage from the RF capacity server.

In order to keep from flooding the network with poll requests it ispreferred that the poll scheduler server keep control of polling timeframes (e.g., poll start and stop times), poll initiation, poll statusand poll retries. Therefore, the system maintains a list of customer SUsthat are to be polled. The system preferably begins polling the SUs assoon as the poll start window is reached.

The RF capacity server preferably distributes poll requests to theappropriate RF/RNCs and base stations throughout the network. When it istime for the RF capacity server to begin distributing poll requests, inat least one embodiment it will read the data repository of queuedpolls. If the read completes without error, the RF capacity server willforward the poll request to the appropriate SU manager server, whichtransmits the poll to a SU. When an ACK or a NAK is received, the RFcapacity server will forward the message to the appropriate pollscheduler server and set an internal timer waiting for an unsolicitedmessage from the SU. When an unsolicited message is received for the SU,the poll routing server will send a poll inquiry message to theappropriate RF capacity server. At this point, in at least oneembodiment, the RF capacity server checks its internal timer queue andpreferably returns an indication to the poll routing server as whetherwe were expecting a poll status message. If the timer expires, RFcapacity server will forward a NAK to the appropriate poll schedulerserver.

Therefore, at least one embodiment of the present invention utilizes awireless communication system for polling wireless devices. The systemuses at least one wireless device capable of receiving a poll requestthat originates from a host computer. Each wireless device communicatingwith the host computer preferably uses or is assigned to a respectivepredetermined base transceiver station of the system. Different numberof servers may optionally be used in the present invention and/or asingle server may optionally be used to perform some or all of theabove-described functionality.

A routing switch communicates with the host computer and the basetransceiver station, and utilizes a poll download server thatcommunicates with the host computer. The routing switch receives a pollrequest from the host computer pertaining to which of one or more ofwireless devices are to be polled. The poll download server preferablycommunicates with a first data repository for storing the poll requestdata that preferably includes data pertaining to at least one of anidentifier associated with a wireless device, the predetermined basetransceiver station associated with the wireless device, and a customeridentifier associated with the wireless device. The routing switch alsoutilizes a poll scheduler server, that accesses the first datarepository, preferably on a real time or substantially real time basis,for queuing the poll request data on a second data repository.

In addition, the routing switch uses a radio frequency (RF) capacityserver, preferably communicating with at least the poll scheduler serverand the second data repository, for maintaining outstanding pollrequests. A wireless device management server, preferably communicatingwith at least the RF capacity server, receives poll requests from the RFcapacity server. A radio frequency server, preferably communicating withthe wireless device management server, adds radio frequency informationto the poll request. The RF capacity server can also delete pollrequests from the second data repository. Finally, a protocol server,preferably communicating with at least the radio frequency server, addsa protocol header to the poll compatible with the wireless device towhich the poll is transmitted.

The first embodiment optionally utilizes a fixed customer datarepository that communicates with the poll download server and the RFcapacity server. The fixed customer data repository preferably containsdata pertaining to a customer host identifier and the amount of timeafter a poll acknowledgement is received to consider a message from awireless device as a poll response. The fixed customer data repositoryalso optionally contains data pertaining to at least one of the minimumamount of time that must expire before a poll can be retried and thenumber of polling retries allowed per polling day.

In operation, the poll download server preferably reads the first datarepository to validate at least one of the wireless devices and thecustomer. The first data repository preferably includes data pertainingto a host computer identifier, a wireless device identifier, and polldata. The first data repository can also optionally include datapertaining to at least one of poll data transmitted in the poll message,a status of the poll, and a time at which a last poll was issued.

The system also optionally includes a capacity information datarepository, communicating with the poll download server and the RFcapacity server, that contains data pertaining to the name of the RFcapacity server that is controlling the rate at which polls aretransmitted to a radio frequency network control processor.

The system can also include a response server that communicates with theradio frequency server and receives from the radio frequency server anindication of whether a wireless device is responding to the pollrequest. The indication can optionally be stored in the first datarepository.

The system can also include a poll routing server that communicates withthe RF capacity server and the protocol server and receives messagesfrom the wireless devices in response to a poll request. In at least oneembodiment, the RF capacity server receives a poll inquiry message fromthe poll routing server and transmits a response to the poll routingserver indicating whether the message received from a wireless devicehas an outstanding poll request.

The system can also include a request server that communicates with theradio frequency server and receives data from the wireless device inresponse to the poll. The request server can also optionally verify thatthe wireless device can transmit the data to said host computer.

In a second embodiment, a wireless communication system transmits a datamessage from a wireless device to a wireless communication systemsubsequent to the system polling the wireless device. In a preferredembodiment, the system includes a wireless device that receives a pollthat originates from a host computer. Each wireless device preferablycommunicates with a host computer using a predetermined base transceiverstation of the system.

A routing switch communicates with the host computer and the basetransceiver station. The routing switch includes a radio frequencyserver that communicates with the wireless device, receives a datamessage from the wireless device, and removes a radio frequencyinformation from the data message. A host router reads a profile of thewireless device that includes an indication of the host computer towhich the wireless device transmits the data message. The host routeralso adds system routing information to the data message. In addition, apoll routing server receives the data message from the host router anddetermines if an outstanding poll request is associated with thewireless device. A protocol server communicates with at least the pollrouting server, and adds a protocol header to the data messagecompatible with the host computer to which the data message istransmitted.

The system also includes a radio frequency (RF) capacity server thatpreferably uses a timer to transmit an indication to the poll routingserver as to whether a poll request is outstanding. The RF capacityserver further maintains outstanding poll requests and timers for thebase transceiver stations. Upon receiving a message, the host transmitsan acknowledgement to the poll routing server.

The poll scheduler updates a poll information database to indicate thatthe host has received the message, receives the acknowledgement from thepoll routing server, and updates the poll information database toindicate that the host has received the message. In the event that thehost does not receive the message, the host preferably transmits a NAKto the poll routing server. Once a poll request has exhausted themaximum number of poll attempts, the poll routing server transmits amessage to the host computer indicating that the poll has not beencompleted.

In a third embodiment, a wireless communication system is provided fortransmitting a data message from a wireless device associated with afirst routing switch to a host computer associated with a second routingswitch. The system includes a wireless device that receives a poll thatoriginates from a host computer. Each wireless device preferablycommunicates with the host computer using a predetermined basetransceiver station of the system.

The system preferably includes a first routing switch that communicateswith the wireless device. In particular, in at least one embodiment, therouting switch includes a radio frequency server, communicating with thewireless device, that receives in response to a poll of the wirelessdevice a data message from the wireless device and removes a radiofrequency information from the data message.

A request server receives the data message from the radio frequencyserver and reads a first data repository containing information thatassociates an identifier of the wireless device with a host computer.The host router reads network configuration information from a seconddata repository containing system routing information pertaining to asecond routing switch. A radio frequency (RF) capacity server maintainsone or more records of outstanding poll requests.

A second routing switch communicates with the first routing switch andincludes a second host router that receives the message from the firsthost router. In addition, a poll routing server receives the messagefrom the second host router and receives an indication from the RFcapacity server whether an outstanding poll request is associated withthe wireless device. A protocol server communicates with at least thepoll routing server, and adds a protocol header to the data messagecompatible with the host computer to which the data message istransmitted.

Upon receiving the message, the host computer transmits anacknowledgement to the protocol server, which then transmits theacknowledgement to the poll routing server. The poll routing serverpreferably reads information from a first data repository to determine acorrect poll scheduler to transmit the acknowledgement, and updates asecond data repository to indicate that the host has received themessage.

In additional aspects of the present invention, a method for polling awireless device having a substantially fixed location includes the stepsof associating a wireless device with a base transceiver station (BTS).That is, in accordance with preferred embodiments, the wireless deviceshould be relatively “fixed” in that it transmits to and/or isassociated with a predetermined BTS.

In addition, a BTS transmits (but does not necessarily originate),optionally at a predetermined time, a poll to the wireless device todetermine whether the wireless device has data to transmit. Apredetermined period of time, subsequent to the poll, is used todetermine whether a response from the wireless device is considered aresponse to the poll. Finally, a BTS receives an indication from thewireless device whether a data message is to be transmitted. If aresponse is prior to the expiration of the predetermined time, theresponse is considered to be responsive to the poll. If a response issubsequent to the expiration of the predetermined time, the response isnot considered to be responsive to the poll. If the response isconsidered responsive to the poll and the device has data to transmit,the device transmits a data message in response to the poll.

Another method of a communication system polling a wireless device inaccordance with the present invention includes the step of establishinga substantially fixed location of a wireless device with respect to thecommunication system. The device is polled to determine if the wirelessdevice has data to transmit, and a determination is made whether atransmission from the wireless device subsequent to the polling step isin response to the poll. The transmission is considered responsive tothe poll if the wireless device transmits to the system within apredetermined threshold time subsequent to the poll.

Finally, a system is provided for polling a wireless device having asubstantially fixed location. The system includes means for associatinga wireless device with a base transceiver station, and means for settinga time at which to poll the wireless device. The system also includesmeans for setting a time period subsequent to a poll for which aresponse from the wireless device is considered a response to the poll.Finally the system includes means for receiving an indication from thewireless device whether a data message is to be transmitted.

There has thus been outlined, rather broadly, the more importantfeatures of the invention in order that the detailed description thereofthat follows may be better understood, and in order that the presentcontribution to the art may be better appreciated. There are, of course,additional features of the invention that will be described hereinafterand which will form the subject matter of the claims appended hereto.

In this respect, before explaining at least one embodiment of theinvention in detail, it is to be understood that the invention is notlimited in its application to the details of construction and to thearrangements of the components set forth in the following description orillustrated in the drawings. The invention is capable of otherembodiments and of being practiced and carried out in various ways.Also, it is to be understood that the phraseology and terminologyemployed herein are for the purpose of description and should not beregarded as limiting.

As such, those skilled in the art will appreciate that the conception,upon which this disclosure is based, may readily be utilized as a basisfor the designing of other systems and methods for carrying out theseveral purposes of the present invention. It is important, therefore,that the claims be regarded as including such equivalent constructionsinsofar as they do not depart from the spirit and scope of the presentinvention.

Further, the purpose of the Abstract is to enable the U.S. Patent andTrademark Office and the public generally, and especially thescientists, engineers and practitioners in the art who are not familiarwith patent or legal terms or phraseology, to determine quickly from acursory inspection the nature and essence of the technical disclosure ofthe application. The Abstract is neither intended to define theinvention of the application, which is measured by the claims, nor is itintended to be limiting as to the scope of the invention in any way.

These together with other objects of the invention, along with thevarious features of novelty which characterize the invention, arepointed out with particularity in the claims annexed to and forming apart of this disclosure. For a better understanding of the invention,its operating advantages and the specific objects attained by its uses,reference should be had to the accompanying drawings and descriptivematter in which there is illustrated preferred embodiments of theinvention.

BRIEF DESCRIPTION OF THE DRAWINGS

The Detailed Description including the description of a preferredstructure and method as embodying features of the invention will be bestunderstood when read in reference to the accompanying figures wherein:

FIG. 1 illustrates a prior art block diagram of a first messagingsystem;

FIG. 2 illustrates a prior art block diagram of the connection of aplurality of electronic mail systems through a plurality of interfaceswitches to an input port of an RF information transmission network;

FIG. 3 illustrates a prior art block diagram of the transmission ofinformation originating from a plurality of electronic mail systems to aRF information transmission network to a plurality of destinationprocessors and originating processors within a plurality of electronicmail systems;

FIG. 4 is a schematically simplified representation of the Motient^(SM)terrestrial communications network;

FIG. 5 is an exemplary diagram of a host routing configuration, whichalso illustrates a method of host routing;

FIG. 6 is an exemplary diagram of a poll download message flow, whichalso illustrates a method in accordance with the present invention;

FIG. 7 is an exemplary diagram of a scheduled poll initiation, whichalso illustrates a method in accordance with the present invention;

FIG. 8 is an exemplary diagram of a subscriber unit to host pollresponse when the subscriber unit and host share a common routingswitch, which also illustrates a method in accordance with the presentinvention;

FIG. 9 is an exemplary diagram of a poll response when the subscriberunit and host utilize different routing switches, which also illustratesa method in accordance with the present invention; and

FIG. 10 shows an exemplary method of polling wireless devices having asubstantially fixed geographic location.

DETAILED DESCRIPTION

Reference now will be made in detail to the presently preferredembodiments of the invention. Such embodiments are provided by way ofexplanation of the invention, which is not intended to be limitedthereto. In fact, those of ordinary skill in the art may appreciate uponreading the present specification and viewing the present drawings thatvarious modifications and variations can be made.

For example, features illustrated or described as part of one embodimentcan be used on other embodiments to yield a still further embodiment.Additionally, certain features may be interchanged with similar devicesor features not mentioned yet which perform the same or similarfunctions. It is therefore intended that such modifications andvariations are included within the totality of the present invention.

The Motient^(SM) network 400 is a terrestrial wireless two-way datanetwork that is based on Motorola's Radio Data-Link Access Procedure(RD-LAP) technology. RD-LAP is a radio frequency (RF) protocol used forcommunicating between wireless devices 402, 404, 406 and base stations410. It was originally developed and jointly owned by Motorola and IBM.In 1995 Motorola acquired 100 percent ownership of what was then calledthe ARDIS® (Advanced Radio Data Information Services) network. In 1998,ARDIS® was acquired by American Mobile Satellite Corporation (nowMotient Corporation, Reston, Va.).

The Motient^(SM) network 400 covers at least ninety percent of the urbanbusiness population and more than 500 metropolitan area in the UnitedStates, Puerto Rico and the Virgin Islands. Two standard air-interfaceprotocols have been developed for the network 400. The standard MobileData Communications-4800 (MDC-4800) protocol provides a 4800 bit/secservice, and the standard RD-LAP protocol provides a 19.2 kbit/secservice.

The network 400 allows SUs such as an intelligent terminal or computingdevice 402, handheld device 404, and/or other communications device 406to transmit and/or receive data messages. SUs 402, 404, 406 therefore,typically have a radio frequency (RF) modem for sending and receivingsignals. The RF modem utilizes the MDC-4800 and/or RD-LAP protocols toenable SUs to gain access to the Motient^(SM) network 400. In the eventa network other than the Motient^(SM) network 400 is utilized, otherair-interface communication protocols may be used. For example, if aMOBITEX network is used, the air-interface protocol would utilizeGaussian minimum shift keying (GMSK).

The network 400 has over 2000 base stations (410) that provide servicethroughout the United States, Puerto Rico, and U.S. Virgin Islands. Eachbase station 410 covers a radius of approximately 15–20 miles. The basestations 410 are radio frequency towers that transmit or receive radiosignals between SUs 402, 404, 406 and the Radio Frequency/NetworkControl Processors (RF/NCPs) 412. Base stations 410 transmit and receiveradio signals, preferably using a narrow band FM transmitter andreceiver operating in the 800 MHz frequency band. There are separatefrequencies for the transmit path and the receive path; together thesetwo frequencies represent a full duplex channel that normally transmitsdata at 4800 bps in both directions. Other standard transmission methodsmay alternatively be used in other standard communication systems.

In operation, for a message “inbound” to the network 400 from a SU 402,404, 406, the signal is “heard” or received by the base stations 410 andsent over dedicated leased lines 416 to a RF/NCP 412. The network 400employs an automated roaming capability that allows the free movement ofSUs 402, 404, 406 between cities and between multiple channels within agiven city. This capability allows the SUs 402, 404, 406 to freely move(roam) across the country and take advantage of all the network servicesthat are available in every locale.

The RF/NCPs 412 are high-speed computers that interconnect multiple basestations 410 with the standard ARDIS® Connect Engine(s) (ACEs) 414. Anumber of RF/NCPs 412 are located together serving a particulargeographical area, each being connected by high speed digital phoneservice to one of the ACEs 414, which route messages to a destinationsuch as a customer host computer 408 that is directly connected to thenetwork 400 by, for example, a leased telephone line or a value addednetwork.

RF/NCPs 412 manage the RF resources, including the base stations 410 anddata sent over the radio channels. Both inbound and outbound channelsare managed using different delivery strategies. The RF/NCPs 412evaluate the strength of the signal received from every wireless devicetransmission at each base station for each detected inbound data packet.Alternatively, the wireless device or the system may evaluate signalstrength and report back to the RF/NCP 412. The RF/NCP 412 then selectsthe best base station 410 to communicate with that particular wirelessdevice and will send the next outbound message through that basestation.

The RF/NCPs 412 also help manage the roaming capability of the network400. SUs 402, 404, 406 can automatically move (roam) between any of thenetwork 400 frequencies on either of the two protocols (MDC-4800 andRD-LAP 19.2), or between any of the configured network 400 layers thathave been configured for in-building or on-street usage. Throughperiodic transmission of “channel market messages,” each SU 402, 404,406 is provided with the most efficient service available in that area.Each RF/NCP 412 also passes information, via a high speed digital line,relating to source, destination and length of each message to an ARDISconnect Engine (ACE) 414 that enables the network 400 to do networkanalysis of traffic density at each base station 410.

ACE 414, in turn, passes information back to a RF/NCP 412 concerningwhether the SU 402, 404, 406 is properly registered to the network 400and, if so, what level of service is provided to the respectivesubscriber 402, 404, 406. The ACEs 414 are general purpose computersthat act as the heart of the network 400. The ACEs 414 route messages tothe proper destination, store subscriber registration informationincluding entitlement, and perform accounting and billing functions. TheACEs 414 also serve as a point of connectivity to, for example, host408, perform protocol conversion, and perform network 400troubleshooting and test functions. A plurality of ACEs 414 areinterconnected through dedicated lines, with alternate paths availablefrom each switch as a contingency measure against line interruptions.The linking between host 408 and an ACE 414 is generally accomplishedusing Transmission Control Protocol/Internet Protocol (TCP/IP), SystemsNetwork Architecture (SNA), or X.25 dedicated circuits.

The wireline network 416 provides communication between the customerhost computer 408, the ACEs 414, the RF/NCPs 412, and the base stations410. The wireline network 416 is equipped with communications equipmentthat relays customer messages. This equipment includes intelligentmultiplexers, leased telephone circuits, high-speed modems or digitalservice units, and modems for both RF/NCP 412 and host 408 connectivity.Accordingly, the various functionality performed by ACE 414 and theother one or more RF/NCPs 412, and base stations 410 may optionally bedistributed in various parts/manners to those network components inaccordance with alternative embodiments of the invention.

Inside every cell, the SUs 402, 404, 406 access the network 400 using,for example, a random access method called data sense multiple access(DSMA). Before every transmission, a SU 402, 404, 406 listens to a basestation 410 to determine if the base station is busy. The SUs areallowed to transmit only when a base station 410 is not busy and/or havecapacity to provide service.

FIG. 5 is an exemplary diagram of a host routing configuration, whichalso illustrates a method of host routing. Although only two hosts 408,409 and two nodes 414 a, 414 b are shown in FIG. 5, any number of hostconnections may be configured as hot backups. In this embodiment, thecustomer host primary connection (e.g., host 408) is optionallyconfigured as one-to-many physical connections under one logicalgrouping. Further, a negative acknowledgement (NAK) message (e.g., a“host down message”) can optionally be transmitted to ACE 414 a, ACE 414b and/or the originating SU 404 when all primary and hot backupconnections are down or otherwise unresponsive and/or unavailable.

More specifically, a SU 404 via, for example, BTS 410 and RF/NCP 412,transmits (2) data (e.g., a message) to ACE 414 a. In operation, it ispreferred that a message is sent from a SU 404 and (normally) receivedby host computer 408 via any of the network 400 supported line protocols(e.g., X.25).

The message, via line handler 502, is routed (3) to RNC server 503,which removes any RF transmission headers from the transmitted message.When transmitting a message to a SU 404, the RNC server 503 also adds anappropriate radio frequency (RF) header for RF transmission. The RNCserver 503 then transmits (4) the message to request server 504. Requestserver 504 reads (5) the SU 404 profile, and adds the primary network400 information to the internal ACE 414 a header. In one embodiment,such information can be stored, for example, in one or more databases.For example, the customer information database 516 can store informationwith regard to whether a customer is in good standing (e.g., bills havebeen paid on time). The subscriber unit (SU) information database 518can store the type and level of service provided to each customer and/orSU, and/or data pertaining to usage fees and/or billing.

The request server 504 transmits (6) the data to the host router 506.Host routers 506, 512, can store and/or access information pertaining toeach SU 404 and, for example, their associated primary host (e.g., host408) and/or secondary host (e.g., customer host 409). Host router 506preferably transmits (8 a, 8 b) the message to SU queue managers 508 a,508 b, respectively, which queues the message. When transmitting to hostcomputers 408, 409, other embodiments of the invention can eliminate useof queue managers 508 a, 508 b, in which case the message could betransmitted directly to SCR server 510. When it is time to transmit themessage, one of the SU queue managers (e.g., a primary queue manager 508a) transmits (10 a) the message to the binary SCR server 510, whichverifies routing headers before attempting to transmit (12) the messageto customer host 408 via line handler 511. In the event that SU queuemanager 508 a is down or otherwise unresponsive, SU queue manager 508 bcan transmit (10 b) the message to SCR server 510.

Binary SCR is a standard protocol that can be used in host based routingwhen a SU 404 sends messages to and/or receives messages from a hostcomputer 408, 409 connected to the network 400. Host based routing isgenerally used for applications which require a central repository ofinformation or on-line service. This type of routing assumes that thehost computer 408, 409 is in a fixed location and that the host computer408, 409 application(s) complements the client application, usually byproviding more complex processing. It is preferred that the hostcomputer 408, 409 is connected to the respective ACE 414 a, 414 bthrough one of a variety of supported protocols (e.g., SNA LU6.2 orX.25). The physical connection to ACE 414 a, 414 b can be, for example,a leased line. Alternative standard protocols and/or routing algorithmsmay optionally be used.

SCR can be used for routing the message from the ACE 414 a to host 408(and 409). SCR is an application header which flows between the network400 and the customer host 408 (and vice versa). This header ispreferably placed at the beginning of the user data. SCR provides formessage control and delivery acknowledgment, and can be used with, forexample, the SNA LU 6.2, X.25 protocols and TCP/IP protocols. Otherstandard application headers may alternatively be used that performs orprovides the functionality and/or data described herein.

It is preferred that there are at least three types of SCR messageheaders: Basic Inbound (IB), Basic Acknowledgement (AB), and BasicOutbound (BO). For messages originating at SU 404 via ACE 414 a, the IBheader is preferably created in SCR server 510. For messages originatingat a customer host (e.g., customer host 408), the IB header ispreferably created in the customer host 408 application software orcommunications software and flows from the customer host 408 to thenetwork 400. The network 400 can then direct the message to theappropriate SU 402, 404, 406 via, for example, ACE 414 a and/or ACE 414b.

The AB header is created by network 400 (e.g., ACE 414 a) and is sent tohost 408 (or host 409). An AB header notifies the host 408 that themessage sent to a SU 404 was successfully delivered.

An OB header is created by the network 400 (e.g., ACE 414 a) formessages sent to the host 408 (and host 409 if operable) from a SU 404.Further information pertaining to the SCR protocol and the Motient^(SM)network can be found in the following documents: ARDIS NetworkConnectivity Guide, June 1994; DataTAC Wireless Data Networks:Application Development Guide, First Edition, November 1997; DataTACOpen Protocol Specifications Standard Context Routing Release 1.0,November 1995); ARDIS DataTAC 4000 Software Developers Reference Guide,Revision 2.0, January 1997. Each of the aforementioned documents areincorporated herein by reference in their entirety. Copies of thesedocuments are submitted herewith and/or included in the priorityapplications incorporated by reference in the related applicationssection of this application. Other standard message headers and/orcommunication networks may alternatively be used providing thefunctionality and/or data described herein.

When the message cannot be delivered to the host 408, line handler 511transmits (14) the message to the SCR server 510 which, in turn,transmits (16) the message to the host router 506. Host router 506 reads(18) backup routing information from database 521 a, and transmits (20)the message to host router 512 associated with ACE 414 b. Host router512 transmits (22) the message to SCR server 514, which adds a header tofacilitate transmission of the message to host 408 via line handler 516.In a first embodiment shown in FIG. 5, the message is successfullytransmitted (25 a) to the host 408 by line handler 516. The message canoptionally be subsequently transmitted to, for example, a computingdevice 402 directly from the host 408 or via the Internet 550, and/or toa SU 404 via the Internet 550.

In a second embodimen, the line handler 516 cannot deliver (25 b) themessage to host 408. Upon determining that the message cannot bedelivered to host 408, the line handler 516 transmits (26) the messageto SCR server 514 which, in turn, transmits (28) the message to the hostrouter 512. The host router 512 reads (30) alternate routing informationfrom database 521 b, and transmits (32) the message to SCR server 514,which adds headers to the message. SCR server 514 transmits (34) themessage to line handler 534 which, in turn, transmits (36) the messageto a backup host (e.g., host 409) as determined by information stored indatabase 521. The message can optionally be subsequently transmitted to,for example, a computing device 402 directly from the host 408 or viathe Internet 550, and/or to a SU 404 via the Internet 550.

When the message has been successfully transmitted, host 409 transmits(38) an acknowledgement to line handler 534 which, in turn, transmits(40) an acknowledgement to SCR server 514. SCR server 514 then transmits(42) the acknowledgement to server 530. As indicated above, othercommunication networks may optionally be used.

The system and method in accordance with FIG. 6 shows an exemplarydiagram of a poll download message flow, which also illustrates a methodin accordance with the present invention.

Poll download data is delivered (1) from the host 408 to line handler606, preferably over, for example, a virtual circuit separate fromnormal production data via line handler 607. This virtual configurationadvantageously keeps the poll data from affecting the throughput of the“normal” system 400 traffic. Also, by using this configuration, thesystem 400 can throttle/control the rate at which a host 408 maydownload data to ACE 414 a. In at least one embodiment, a reply to theline handler path send request is not sent until the poll request hasbeen inserted/updated in the poll information database 610, and a pollindication message has been sent to the host line handler 606. Thisfunctionality advantageously allows use of an algorithm in the linehandler that limits the number of concurrent poll download requests fromthe customer's host 408. At least one embodiment of the poll informationdatabase 610 can utilize one or more of the following fields: CUSTOMER,which serves as a customer identification; DEVICE ID, which is a SU 404identifier; POLL DATA, which is the poll data passed in the message;POLL STATUS, which is a status of the poll (e.g., pending, executing,successful, retrying, failed); POLL REASON CODE, which indicates thereason for retrying a poll or having a failed poll; and LAST TIME POLL,which is the last time a poll was issued.

The poll download server 604 validates and accepts (2) poll requestmessages from customer host(s) 408 and inserts (6) them into, forexample, the poll information database 610. Prior to insertion, the polldownload server 604 verifies (3) from, for example, the SU informationdatabase 519 that the SU 404 that is to be polled is valid andregistered to the requesting customer. The poll download server 604 alsoverifies (4) from for example, the customer information database 516that the customer is in good standing, and further verifies (5) fromfixed customer database 608 that the customer utilizes the fixed pointpolling service. The fixed customer database 608 can also storeinformation pertaining to the correct poll scheduler 714 to routemessages. In the event that the SU 404 is not located in the SUinformation database 519, the poll download server can optionally query(3 a) the SU master index database 612 and/or query (3 b) the SU homedomain database 614 to validate the SU 404.

Once the poll download server 604 has inserted (6) the poll request intothe poll information database 610, the poll download server 604 respondsby transmitting (7) a poll indication message and pathsend reply message(8) to line handler 606, which subsequently transmits (9) the pollindication message to host 408. The poll indication message indicates tothe host 408 that the system 400 has stored the poll request message andwill attempt to poll (one or more of) the designated SU(s) 404 duringthe configured poll time frame(s). If the poll download server 604 isnot able to insert the poll request into the poll information 610database, the poll download server 610 preferably responds to the host408 with a message that indicates why the poll request was denied.Finally, the poll download server 604 transmits (11) a usage record tousage server 602, indicating that a fixed point polling request has beenscheduled.

In at least one embodiment, the poll download server 604 can utilizeparameters such as: 1) STARTPOLLTIME, which can indicate the hour andminute that at which the poll window begins. Valid parameters can be,for example, 00:00–23:59; 2) STOPPOLLTIME, which can indicate the hourand minute that the poll window ends; and 3) SUINFOMIREADTO, whichindicates the amount of time that the SUMASTERINDEX database 612 will beread prior to switching back to either of the SU information databases519, 614.

FIG. 7 is an exemplary diagram of a scheduled poll initiation, whichalso illustrates a method in accordance with the present invention. Ingeneral, the poll scheduler server 714 is responsible for tracking pollstart and stop times, poll initiation, poll status and poll retries. Thepoll scheduler server also ensures that poll requests do not get queuedbefore the scheduled time, and can optionally notify the host 408 if allretries have been exhausted. At startup, the poll scheduler 714 readsinformation from the fixed customer database 608 such as a host 408identifier, a poll response window indicating the amount of time after apoll request ACK to consider unsolicited messages from the device as apoll response (in seconds), and a host failure notification flagindicating if the host 408 expects a notification after all attempts topoll a SU 404 have failed. The fixed customer database 608 can alsostore data pertaining to maximum poll responses which, if set to a valueof, for example, two or more indicates that the poll scheduler will waitfor the maximum number poll responses to be received, or for the pollresponse window to expire before considering the RF/NCP 412 available.The fixed customer database 608 can also utilize other fields.

At startup, the RF capacity server 706 reads data from the Base StationController (BSC) information database 710 and from the capacityinformation database 708. The RF capacity server 706 also generates pollrequests on behalf of a host computer 408, and ensures that the network400 does not get overloaded by such messages. The BSC informationdatabase 710 is utilized by, for example, the RF capacity server 706 toobtain the maximum number of concurrent polls allowed and valid pollingwindows (e.g., poll start and stop times) for each RF/NCP 412. Thecapacity information database 708 preferably contain data pertaining tothe ACE (e.g., 414 a, 414 b) and process name of the RF capacity server706 which is throttling the specified RF/NCP 412. The BSC informationdatabase 710 also preferably contains data pertaining to the maximumnumber of concurrent polls allowed and poll start and stop timed foreach RF/NCP 412.

The poll scheduler 714 also reads, preferably continuously, pollrequests in the poll information database 610 using, for example, theindex of System/NetID/Poll Status/Poll Start Time/Next Poll Time. Thepoll scheduler 714 also preferably maintains statistics pertaining tothe number of new poll requests attempted, the number of poll requestscompleted, the number of poll requests retried, and the number of pollrequests failed.

For the initial pass through the poll information database 610, the pollscheduler 714 preferably reads rows that have a poll status equal tozero, indicating that the poll has not yet been attempted. Once all ofthese records are read, polled and the corresponding unsolicited statusmessage is received, the poll scheduler 714 will read rows that have apoll status of three (last attempt failed—needs to be retried). The pollscheduler 714 also preferably tracks the number of poll attempts foreach poll request.

The poll scheduler 714 preferably updates (3) the poll informationdatabase 610 to indicate that the poll request has been queued (2) tothe poll queue database 712 which, in at least one embodiment, containspoll request data pertaining to at least the destination RF/NCP 412 forthe poll, the time that the record was queued, the host 408 that queuedthis record, and a destination SU 404 identifier.

The RF capacity server 706 reads the poll queue database 712 for pollrequests, and distributes poll requests to the appropriate RF/NCP(s) 412and base stations 410 throughout the network 400. When it is time forthe RF capacity server 706 to begin distributing poll requests, it reads(4) the poll queue database 712, preferably continually, using, forexample, a field pertaining to the RF/NCP 412 and/or BTS 410. If theread completes without error, the RF capacity server 706 transmits (7)the poll request to the appropriate SU manager. The RF capacity server706 also reads (5) data from the SU information database 519, anddeletes (6) poll requests from the poll queue database 712 once theyhave been forwarded (7) to the SU manager 702. The poll message issubsequently transmitted (8) to the RNC server 503, a line handler 502designated by the RNC Server 503 (9), to a RF/NCP 412 (10), and then tothe designated SU 404.

When polled, the designated SU 404 transmits either an ACK or NAKmessage (11), indicating that the SU 404 has information to transmit, ordoes not have information to transmit, respectively. The ACK/NAK messageis transmitted (12) to the RNC Server 503, to the response Server 704(13), and to the SU Manager 702 (14). The response server 704 processesthe ACK and NAK messages, and receives (15) from the SU manager 702 anindication that the message poll message has been dequeued. The Responseserver 704 preferably reads (16) from the capacity information database708 prior to transmitting (17) preferably the ACK/NAK to the RF capacityserver 706. The RF capacity server 706 also reads (18) from the fixedcustomer database 608 to verify that the designated SU 402 is registeredfor the fixed point polling service prior to transmitting (19) theACK/NAK to the Poll Scheduler 714. The RF capacity server 706 then setsan internal timer waiting for an unsolicited message from the SU 404.

The poll scheduler 714 subsequently updates (20) the poll informationdatabase 610 with regard to ACK/NAK status. If the poll can not betransmitted to the designated SU 404, a NAK is transmitted (21) to thehost router server 506.

FIG. 8 is an exemplary diagram of a SU 404 to host 408 poll response inwhich the SU 404 and host 408 are associated with ACEs 414 a. FIG. 8also illustrates a method in accordance with the present invention. FIG.8 is applicable when, for example, the SU 404 shown in FIG. 7 transmits(11) an ACK, indicating in response to the poll that the SU 404 has datato transmit.

As shown, a SU 404 via, for example, BTS 410 and RF/NCP 412, transmits(1) a message to line handler 502. The message, via line handler 502, istransmitted (2) to RNC server 503, which removes the appropriate radiofrequency (RF) message header, adds appropriate ACE 414 a routingheaders, and transmits (3) the message to request server 504. Requestserver 504, in turn, then transmits (4) the message to host router 506,which reads (5) network configuration information and/or SU 404information from network information database 802. The networkinformation database 802 contains network 400 routing informationpertaining to the ACE 414 a, 414 b to which the customer host 408 isconnected. Host router 506 then transmits (6) the message to pollrouting server 804 which reads (7), as needed, from capacity informationdatabase 708 the BTS(s) 410 associated with an RF/NCP 412, and thecapacity (e.g., bandwidth) of each BTS 410. The poll routing server 804also reads the capacity information database 708 to determine thecorrect RF capacity server 706 to transmit to.

RF capacity server 706 then receives (8) from the poll routing server804 a poll inquiry message. The RF capacity server 706 checks itsinternal timer queue and transmits (9) an indication to the poll routingserver as to whether a poll request is outstanding. The RF capacityserver 706 also maintains lists of outstanding poll requests and timersfor RF/NCP 412 and BTSs 410 associated with those lists, and transmits(9) a reply as to whether the message received at host router 506 has acorresponding poll request outstanding. Reply (9) can also be a NAK inthe event of, for example, a timeout.

Poll routing server 804 then transmits (10) the data sent in response tothe poll to SCR server 510 which, in turn, transmits (11) the message toline handler 511. Line handler 511 then transmits (12) the message tothe host 408. Upon receiving the message, the host 408 transmits (13) anACK via the line handler 511 to the SCR server 510 which, in turn,transmits (14) the ACK to poll routing server 804. The poll routingserver 804 then reads (15) the fixed customer database 608 to determinethe correct poll scheduler 714 to transmit (16 a) the ACK message to. Inthis case, the poll scheduler 714 is associated with ACE 414 a. The pollscheduler 714 then updates (17) the poll information database 610 toindicate that the host 408 has received the message and that the pollprocess is complete.

In the event that the host 408 does not receive the message, NAKs can besent to the SCR server 510 and poll routing server 804. The poll routingserver 804 then updates (16 b) the polldatq database 808 to indicatethat the message should be retransmitted at a subsequent time. Thepolldatq database 808 queues poll status messages to the poll routingserver 804. The poll routing server 804 also reads from the polldatqdatabase 808 when it determines that the host 408 is available and readyto receive messages. Once a poll request has exhausted the maximumnumber of poll attempts, the poll scheduler 714 can optionally transmita NAK to the host 408 and mark the poll status as failed.

FIG. 9 is an exemplary diagram of a SU 404 to host 408 poll response inwhich the SU 404 and host 408 are associated with ACEs 414 a and 414 b,respectively. FIG. 9 also illustrates a method in accordance with thepresent invention. FIG. 9 is applicable when, for example, the SU 404shown in FIG. 7 transmits (11) an ACK, indicating in response to thepoll that the SU 404 has data to transmit.

As shown, a SU 402 via, for example, BTS 410 and RF/NCP 412, transmits(1) a message to ACE 414 a. In operation, it is preferred that a messageis sent (2) from a SU 404 and (normally) received by host computer 408via any of the network 400 supported line protocols (e.g., X.25).

The message, via line handler 502, is routed (2) to RNC server 503,which removes the appropriate radio frequency (RF) message header, addsappropriate ACE 414 a routing headers, and transmits (3) the message torequest server 504. Request server 504 reads (3 a) the SU 404 profilefrom, for example, customer information database 516, which can storeall valid SU identification numbers (IDs) and associated hostcomputer(s) 408. The request server 504 then transmits (4) the messageto host router 512 a, which reads (5) network configuration informationfrom network information database 802. The network information database802 contains network 400 routing information pertaining to the ACE 414 bto which the customer host 408 is connected. Host router 506 a thentransmits (6 a) the message to host router 506 b.

The poll routing server 804 then reads (7), as needed, from capacityinformation database 708 b the RF capacity server 706 associated withthe SU 404. The RF capacity server 706 checks its internal timer queueand transmits (9) an indication to the poll routing server as to whethera poll request is outstanding. The RF capacity server 706 also maintainslists of outstanding poll requests and timers for RF/NCP 412 and BTSs410 associated with those lists, and transmits (9) a reply as to whetherthe message received at host router 506 b has a corresponding pollrequest outstanding. Reply (9) can also be a NAK in the event of, forexample, a timeout.

The poll routing server then transmits (10) the data sent in response tothe poll to SCR server 514 which, in turn, transmits (11) the message toline handler 511. Line handler 511 then transmits (12) the message tothe host 408. Upon receiving the message, the host 408 transmits (13) anACK via the line handler 511 to SCR server 514 which, in turn, transmits(14) the ACK to the poll routing server 804. The poll routing server 804then reads (15) the fixed customer database 608 to determine the correctpoll scheduler 714 to transmit (16 a) the ACK message to. In this case,poll scheduler 714 is associated with ACE 414 b (as opposed to ACE 414a). The poll scheduler 714 then updates (17) the poll informationdatabase 610 to indicate that the host 408 has received the message andthat the poll process is complete.

In the event that the host 408 does not receive the message, NAKs can besent to SCR server 514 and poll routing server 804. The poll routingserver 804 then updates (16 b) the polldatq database 808 to indicatethat the message should be retransmitted at a subsequent time. Once apoll request has exhausted the maximum number of poll attempts, the pollscheduler 714 can optionally transmit a NAK to the host 408 and mark thepoll status as failed.

FIG. 10 shows an exemplary method of polling wireless devices having asubstantially fixed geographic location. At step 1002, poll downloadserver 604 receives one or more poll request messages from customer host408 a and/or 408 b, and preferably stores them in poll informationdatabase 610. At step 1004, the subscriber unit 404 and host 408configuration (which associates a particular SU 404 with a particularhost 408 a, 408 b) is verified. Poll download server 604 preferablyverifies the SU/host configuration from, for example, the SU informationdatabase 518, which preferably contains data pertaining to whether theSU 404 that is to be polled is valid and registered to the requestingcustomer. The poll download server 604 also preferably can also verifyfrom, for example, customer information database 516 that the customeris in good standing, and further verifies from fixed customer database608 that the customer utilizes the fixed point polling service.

At step 1006, a poll record is created for each SU 404 that is to bepolled. For example, poll download server 604, after accepting pollrequest messages from customer host 408, preferably stores them in thepoll information database 610. At step 1008, a polling time within thepolling window is determined. For example, poll scheduler 714 canmonitor poll start and stop times, poll initiation, poll status and pollretries. To accomplish these tasks, poll scheduler 714 reads from thefixed customer database 608 information such as a host 408 identifier, apoll response window indicating the amount of time (e.g. seconds) aftera poll request ACK to consider unsolicited messages from the device as apoll response, and a host failure notification flag that indicates ifthe host 408 expects a notification after all attempts to poll a SU 404have failed. The fixed customer database 608 can also store datapertaining to maximum poll responses which if set, for example, to avalue of two (or more) indicates that the poll scheduler 714 will waitfor the maximum number poll responses to be received, or for the pollresponse window to expire before considering the RF/NCP 412 available.

At step 1010, designated SUs 402 are polled. To begin polling of SUs402, poll scheduler 714 reads the poll information database 610 asdiscussed with regard to FIG. 7. The poll scheduler 714 then preferablyupdates the poll information database 610 to indicate that the pollrequest has been queued to the poll queue database 712 which, in atleast one embodiment, contains data pertaining to at least thedestination RF/NCP 412 for the poll, the time that the record wasqueued, the host 408 that queued this record, and a destination SU 404identifier.

The RF capacity server 706 then reads the poll queue database 712 forpoll requests, and distributes poll requests to the appropriateRF/NCP(s) 412 and base stations 410 throughout the network 400. When itis time for the RF capacity server 706 to begin distributing pollrequests, it reads the poll queue database 712, preferably continually,using, for example, a field pertaining to the RF/NCP 412 and/or BTS 410.If the read completes without error, the RF capacity server 706transmits the poll request to the appropriate SU manager 702. The RFcapacity Server 706 also reads data from the SU information database518, and deletes poll requests from the pollque database 712 once theyhave been forwarded to the SU Manager 702. The poll message issubsequently transmitted to the RNC server 503, a line handlerdesignated by the RNC Server 503 (9), to a RF/NCP 412 (10), and to thedesignated SU 402.

At decision step 1012, a determination is made whether the polled SU 404responds within a predetermined response time. If the SU 404 responds tothe poll within the predetermined time, the SU 402 transmits either anACK or NAK message, indicating that the SU 404 has information totransmit, or does not have information to transmit, respectively.

At decision step 1018, a determination is made whether the SU 402 andhost 408 utilize the same ACE (e.g., ACE 414 a and/or 414 b). If the SU404 and host 408 utilize the same ACE 414, the message is transmitted tothe host 408 as discussed with regard to FIG. 8. In particular, at step1022, the SCR server 510 adds, for example, an IB header to the messageas discussed with regard to FIG. 5. At step 1024, the message istransmitted to host 408, and the system 400 updates the polling recordsat step 1026. In particular, and with regard to FIG. 8, when pollrouting server 804 receives an ACK, it then reads fixed customerdatabase 608 to determine the correct poll scheduler to transmit (16 a)the ACK message to. The poll scheduler 714 then updates (17) the pollinformation database 610 to indicate that the host 408 has received themessage and that the poll process is complete.

If at decision step 1018 it is determined that SU 404 and host 408 donot utilize the same ACE 414, at step 1020 the message is transmittedfrom the SU's 404 ACE 414 a to the ACE 414 b associated with the host408, as discussed with regard to FIG. 9. Steps 1022, 1024 and 1026 arethen executed as discussed above.

If at decision step 1012 it is determined that the SU 404 has notresponded within a predetermined response time, the poll scheduler 714can optionally transmit a NAK to the host 408 and mark the poll statusas failed in poll information database 610.

The many features and advantages of the invention are apparent from thedetailed specification, and thus, it is intended by the appended claimsto cover all such features and advantages of the invention which fallwithin the true spirit and scope of the invention. Further, sincenumerous modifications and variations will readily occur to thoseskilled in the art, it is not desired to limit the invention to theexact construction and operation illustrated and described, andaccordingly, all suitable modifications and equivalents may be resortedto, falling within the scope of the invention. While the foregoinginvention has been described in detail by way of illustration andexample of preferred embodiments, numerous modifications, substitutions,and alterations are possible without departing from the scope of theinvention defined in the following claims.

1. A wireless communication system for polling wireless devices having asubstantially fixed location, said system comprising: at least onewireless device capable of receiving a poll request, originating from ahost computer, each wireless device communicating with the host computerusing a respective predetermined base transceiver station of the system;a routing switch communicable with the host computer and the basetransceiver station, comprising: a poll download server, communicablewith the host computer and receiving the poll request from the hostcomputer pertaining to which the at least one wireless device are to bepolled, said poll download server communicable with a first datarepository for storing the poll request data; a poll scheduler server,accessing the first data repository, for queuing the poll request dataon a second data repository; a radio frequency (RF) capacity server,communicable with said poll scheduler server and the second datarepository, for maintaining outstanding poll requests; a wireless devicemanagement server, communicable with said RF capacity server, forreceiving a poll request from said RF capacity server; a radio frequencyserver, communicable with said wireless device management server, foradding radio frequency information to the poll request; and a protocolserver, communicable with at least said radio frequency server, foradding a protocol header to the poll compatible with the wireless deviceto which the poll is transmitted.
 2. The system according to claim 1,further comprising a fixed customer data repository communicable withsaid poll download server and said RF capacity server comprising datapertaining to a customer host identifier and the amount of time after apoll acknowledgement is received to consider a message from a wirelessdevice as a poll response.
 3. The system according to claim 2, whereinthe fixed customer data repository further comprises data pertaining toat least one of the minimum amount of time that must expire before apoll can be retried and the number of polling retries allowed perpolling day.
 4. The system according to claim 1, wherein said polldownload server reads the first data repository to validate at least oneof the at least one wireless device and the customer.
 5. The systemaccording to claim 1, further comprising a capacity information datarepository, communicable with said poll download server and said RFcapacity server, comprising data pertaining to the name of the RFcapacity server that is controlling the rate at which polls aretransmitted to a radio frequency network control processor.
 6. Thesystem according to claim 1, wherein the first data repository comprisesdata pertaining to a host computer identifier, a wireless deviceidentifier, and poll data.
 7. The system according to claim 6, whereinthe first data repository further comprises data pertaining to at leastone of poll data transmitted in the poll message, a status of the poll,and a time at which a last poll was issued.
 8. The system according toclaim 1, wherein said poll scheduler server reads the poll request dataon a substantially real time basis.
 9. The system according to claim 1,wherein the poll request data comprises data pertaining to an identifierassociated with a wireless device, the predetermined base transceiverstation associated with the wireless device, and a customer identifierassociated with the wireless device.
 10. The system according to claim1, wherein said poll scheduler server updates the first data repositoryto indicate that the poll request has been stored in the second datarepository.
 11. The system according to claim 1, wherein said pollscheduler server receives at least one of an ACK and NAK responsemessage from said RF capacity server respectively indicating that awireless device has or has not responded to a poll request.
 12. Thesystem according to claim 11, wherein said poll scheduler server updatesthe first data repository with respect to at least one of the ACK andNAK.
 13. The system according to claim 1, wherein said RF capacityserver deletes poll requests from the second data repository.
 14. Thesystem according to claim 1, further comprising a response server,communicable with said radio frequency server, for receiving from saidradio frequency server an indication of whether a wireless device isresponding to the poll request.
 15. The system according to claim 14,wherein the indication is stored in the first data repository.
 16. Thesystem according to claim 15, further comprising a poll routing server,communicable with said RF capacity server and said protocol server, forreceiving messages from the wireless devices in response to a pollrequest.
 17. The system according to claim 16, wherein said RF capacityserver receives a poll inquiry message from said poll routing server andtransmits a response to said poll routing server indicating whether themessage received from a wireless device has an outstanding poll request.18. The system according to claim 1, further comprising a requestserver, communicable with said radio frequency server, receiving datafrom said wireless device in response to said poll and verifying thatsaid wireless device can transmit the data to said host computer.
 19. Awireless communication system for transmitting a data message from awireless device, comprising: a wireless device that receives a poll,originating from a host computer, each wireless device communicatingwith the host computer using a predetermined base transceiver station ofthe system; a routing switch communicable with the host computer and thebase transceiver station, comprising: a radio frequency server,communicable with the wireless device, receiving a data message from thewireless device and removing radio frequency information from the datamessage; a host router that reads a profile of the wireless deviceindicating a host computer to which the wireless device transmits thedata message, and adds system routing information to the data message; apoll routing server that receives the data message from said host routerand determines if an outstanding poll request is associated with thewireless device; and a protocol server, communicable with at least saidpoll routing server, for adding a protocol header to the data messagecompatible with the host computer to which the data message istransmitted.
 20. The system according to claim 19, further comprising aradio frequency (RF) capacity server comprising a timer, said RFcapacity server transmitting an indication to said poll routing serveras to whether a poll request is outstanding.
 21. The system according toclaim 20, wherein said RF capacity server further maintains outstandingpoll requests and timers for the base transceiver stations.
 22. Thesystem according to claim 21, wherein upon receiving the message, thehost transmits an acknowledgement to said poll routing server.
 23. Thesystem according to claim 22, wherein said poll scheduler updates a pollinformation database to indicate that the host has received the message.24. The system according to claim 23, further comprising a pollscheduler that receives the acknowledgement from said poll routingserver and updates the poll information database to indicate that thehost has received the message.
 25. The system according to claim 21,wherein upon the host not receiving the message, the host transmits anegative acknowledgement to said poll routing server.
 26. The systemaccording to claim 25, wherein once a poll request has exhausted themaximum number of poll attempts, said poll routing server transmits amessage to the host computer indicating that the poll has not beencompleted.
 27. A wireless communication system for transmitting a datamessage from a wireless device associated with a first routing switch toa host computer associated with a second routing switch, comprising: awireless device that receives a poll, originating from a host computer,each wireless device communicating with the host computer using apredetermined base transceiver station of the system; a first routingswitch communicable with the wireless device, comprising: a radiofrequency server, communicable with the wireless device, receiving inresponse to a poll of the wireless device, a data message from thewireless device and removing radio frequency information from the datamessage; a request server that receives the data message from said radiofrequency server and reads a first data repository associating anidentifier of the wireless device with a host computer; a first hostrouter that reads network configuration information from a second datarepository containing system routing information pertaining to a secondrouting switch; and a radio frequency (RF) capacity server thatmaintains outstanding poll requests; a second routing switchcommunicable with said first routing switch and the host computer,comprising: a second host router that receives the message from saidfirst host router; a poll routing server that receives the message fromsaid second host router and receives an indication from said RF capacityserver whether an outstanding poll request is associated with thewireless device; and a protocol server, communicable with at least saidpoll routing server, for adding a protocol header to the data messagecompatible with the host computer to which the data message istransmitted.
 28. The system according to claim 27, wherein uponreceiving the message, the host computer transmits an acknowledgement tosaid protocol server.
 29. The system according to claim 28, wherein saidprotocol server further transmits the acknowledgement to said pollrouting server.
 30. The system according to claim 29, wherein said pollrouting server reads information from a first data repository todetermine a correct poll scheduler to transmit the acknowledgement. 31.The system according to claim 30, wherein said poll scheduler updates asecond data repository to indicate that the host has received themessage.